from datetime import datetime


def generate_sql_file(records:list,file_name:str,mode='w',encoding='utf-8'):
    print("传递过来的记录是？？？")
    print(records)
    with open(file_name,mode,encoding=encoding) as f:
        f.write('------生成sql数据中--------\n')
        f.write(f"生成时间:{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}\n")
        f.write(f'一共生成{len(records)}条记录\n')
        # 分批写入
        for i in range(0,len(records),50):
            batch = records[i:i+50]
            # join()是 Python 字符串方法，用于将列表 batch的所有元素用 \n（换行符）连接成一个字符串。
            # 例如，如果 batch = ["a", "b", "c"]，那么 "\n".join(batch)会返回 "a\nb\nc"。
            f.write("\n".join(batch)+'\n')
            print(f"已生成{i+50 if i+50 < len(records) else len(records)}")